package edu.zjut.hjg.saas.biz.service;

import edu.zjut.hjg.saas.biz.model.Tenant;
import edu.zjut.hjg.saas.biz.service.exception.ServiceException;

/**
 * 租户注册服务接口
 *
 * @author hjg
 */
public interface TenantService {
    Integer create(Tenant tenant) throws ServiceException;

    /**
     * 身份校验
     *
     * @param loginId
     * @param password
     * @return 如果校验通过则返回Tenant，否则返回null
     */
    Tenant authenticate(String loginId, String password);

    boolean loginIdExist(String loginId);

    Tenant findById(Integer id);

    void updatePassword(Integer id, String oldPassword, String newPassword) throws ServiceException;

    void update(Tenant tenant);
}
